package com.restaurant.application.indexes.reservationlist.mysql;

import com.google.common.collect.Lists;
import com.nebutown.generation.Convert;
import com.nebutown.generation.PickableBean;
import com.nebutown.generation.basictype.UID;

import java.util.List;

public class ReservationListCriteria implements PickableBean {

    public static final String FN_RECORDID = "recordId";
    public static final String FN_RESERVATIONUIDEQUALS = "reservationUidEquals";
    public static final String FN_RESERVATIONUIDNOTEQUALS = "reservationUidNotEquals";
    public static final String FN_IDLIKE = "idLike";
    public static final String FN_IDEQUALS = "idEquals";
    public static final String FN_IDNOTEQUALS = "idNotEquals";
    public static final String FN_CREATETIMEUPPER = "createTimeUpper";
    public static final String FN_CREATETIMELOWER = "createTimeLower";
    public static final String FN_CREATETIMEEQUALS = "createTimeEquals";
    public static final String FN_CREATETIMENOTEQUALS = "createTimeNotEquals";
    public static final String FN_MODIFYTIMEUPPER = "modifyTimeUpper";
    public static final String FN_MODIFYTIMELOWER = "modifyTimeLower";
    public static final String FN_MODIFYTIMEEQUALS = "modifyTimeEquals";
    public static final String FN_MODIFYTIMENOTEQUALS = "modifyTimeNotEquals";
    public static final String FN_NUMBERLIKE = "numberLike";
    public static final String FN_NUMBEREQUALS = "numberEquals";
    public static final String FN_NUMBERNOTEQUALS = "numberNotEquals";
    public static final String FN_SHOPUIDLIKE = "shopUidLike";
    public static final String FN_SHOPUIDEQUALS = "shopUidEquals";
    public static final String FN_SHOPUIDNOTEQUALS = "shopUidNotEquals";
    public static final String FN_SHOPNAMELIKE = "shopNameLike";
    public static final String FN_SHOPNAMEEQUALS = "shopNameEquals";
    public static final String FN_SHOPNAMENOTEQUALS = "shopNameNotEquals";
    public static final String FN_SERVICENAMELIKE = "serviceNameLike";
    public static final String FN_SERVICENAMEEQUALS = "serviceNameEquals";
    public static final String FN_SERVICENAMENOTEQUALS = "serviceNameNotEquals";
    public static final String FN_PERSONAMOUNTLIKE = "personAmountLike";
    public static final String FN_PERSONAMOUNTEQUALS = "personAmountEquals";
    public static final String FN_PERSONAMOUNTNOTEQUALS = "personAmountNotEquals";
    public static final String FN_DATEUPPER = "dateUpper";
    public static final String FN_DATELOWER = "dateLower";
    public static final String FN_DATEEQUALS = "dateEquals";
    public static final String FN_DATENOTEQUALS = "dateNotEquals";
    public static final String FN_TIMELIKE = "timeLike";
    public static final String FN_TIMEEQUALS = "timeEquals";
    public static final String FN_TIMENOTEQUALS = "timeNotEquals";
    public static final String FN_CUSTOMERIDLIKE = "customerIdLike";
    public static final String FN_CUSTOMERIDEQUALS = "customerIdEquals";
    public static final String FN_CUSTOMERIDNOTEQUALS = "customerIdNotEquals";
    public static final String FN_CUSTOMERUIDLIKE = "customerUidLike";
    public static final String FN_CUSTOMERUIDEQUALS = "customerUidEquals";
    public static final String FN_CUSTOMERUIDNOTEQUALS = "customerUidNotEquals";
    public static final String FN_CUSTOMERNAMELIKE = "customerNameLike";
    public static final String FN_CUSTOMERNAMEEQUALS = "customerNameEquals";
    public static final String FN_CUSTOMERNAMENOTEQUALS = "customerNameNotEquals";
    public static final String FN_PHONELIKE = "phoneLike";
    public static final String FN_PHONEEQUALS = "phoneEquals";
    public static final String FN_PHONENOTEQUALS = "phoneNotEquals";
    public static final String FN_REMARKSLIKE = "remarksLike";
    public static final String FN_REMARKSEQUALS = "remarksEquals";
    public static final String FN_REMARKSNOTEQUALS = "remarksNotEquals";
    public static final String FN_STATELIKE = "stateLike";
    public static final String FN_STATEEQUALS = "stateEquals";
    public static final String FN_STATENOTEQUALS = "stateNotEquals";

    public static final List<String> FIELD_NAMES = Lists.newArrayList(
             FN_RECORDID,
             FN_RESERVATIONUIDEQUALS,
             FN_RESERVATIONUIDNOTEQUALS,
             FN_IDLIKE,
             FN_IDEQUALS,
             FN_IDNOTEQUALS,
             FN_CREATETIMEUPPER,
             FN_CREATETIMELOWER,
             FN_CREATETIMEEQUALS,
             FN_CREATETIMENOTEQUALS,
             FN_MODIFYTIMEUPPER,
             FN_MODIFYTIMELOWER,
             FN_MODIFYTIMEEQUALS,
             FN_MODIFYTIMENOTEQUALS,
             FN_NUMBERLIKE,
             FN_NUMBEREQUALS,
             FN_NUMBERNOTEQUALS,
             FN_SHOPUIDLIKE,
             FN_SHOPUIDEQUALS,
             FN_SHOPUIDNOTEQUALS,
             FN_SHOPNAMELIKE,
             FN_SHOPNAMEEQUALS,
             FN_SHOPNAMENOTEQUALS,
            FN_SERVICENAMELIKE,
            FN_SERVICENAMEEQUALS,
            FN_SERVICENAMENOTEQUALS,
             FN_PERSONAMOUNTLIKE,
             FN_PERSONAMOUNTEQUALS,
             FN_PERSONAMOUNTNOTEQUALS,
            FN_DATEUPPER,
            FN_DATELOWER,
            FN_DATEEQUALS,
            FN_DATENOTEQUALS,
            FN_TIMELIKE,
            FN_TIMEEQUALS,
            FN_TIMENOTEQUALS,
             FN_CUSTOMERIDLIKE,
             FN_CUSTOMERIDEQUALS,
             FN_CUSTOMERIDNOTEQUALS,
             FN_CUSTOMERUIDLIKE,
             FN_CUSTOMERUIDEQUALS,
             FN_CUSTOMERUIDNOTEQUALS,
             FN_CUSTOMERNAMELIKE,
             FN_CUSTOMERNAMEEQUALS,
             FN_CUSTOMERNAMENOTEQUALS,
             FN_PHONELIKE,
             FN_PHONEEQUALS,
             FN_PHONENOTEQUALS,
             FN_REMARKSLIKE,
             FN_REMARKSEQUALS,
             FN_REMARKSNOTEQUALS,
             FN_STATELIKE,
             FN_STATEEQUALS,
             FN_STATENOTEQUALS);

    private Long recordId;
    private UID reservationUidEquals;
    private UID reservationUidNotEquals;
    private String idLike;
    private String idEquals;
    private String idNotEquals;
    private Long createTimeUpper;
    private Long createTimeLower;
    private Long createTimeEquals;
    private Long createTimeNotEquals;
    private Long modifyTimeUpper;
    private Long modifyTimeLower;
    private Long modifyTimeEquals;
    private Long modifyTimeNotEquals;
    private String numberLike;
    private String numberEquals;
    private String numberNotEquals;
    private String shopUidLike;
    private String shopUidEquals;
    private String shopUidNotEquals;
    private String shopNameLike;
    private String shopNameEquals;
    private String shopNameNotEquals;
    private String serviceNameLike;
    private String serviceNameEquals;
    private String serviceNameNotEquals;
    private String personAmountLike;
    private String personAmountEquals;
    private String personAmountNotEquals;
    private Long dateUpper;
    private Long dateLower;
    private Long dateEquals;
    private Long dateNotEquals;
    private String timeLike;
    private String timeEquals;
    private String timeNotEquals;
    private String customerIdLike;
    private String customerIdEquals;
    private String customerIdNotEquals;
    private String customerUidLike;
    private String customerUidEquals;
    private String customerUidNotEquals;
    private String customerNameLike;
    private String customerNameEquals;
    private String customerNameNotEquals;
    private String phoneLike;
    private String phoneEquals;
    private String phoneNotEquals;
    private String remarksLike;
    private String remarksEquals;
    private String remarksNotEquals;
    private String stateLike;
    private String stateEquals;
    private String stateNotEquals;

    public ReservationListCriteria(Long recordId, UID reservationUidEquals, UID reservationUidNotEquals, String idLike, String idEquals, String idNotEquals, Long createTimeUpper, Long createTimeLower, Long createTimeEquals, Long createTimeNotEquals, Long modifyTimeUpper, Long modifyTimeLower, Long modifyTimeEquals, Long modifyTimeNotEquals, String numberLike, String numberEquals, String numberNotEquals, String shopUidLike, String shopUidEquals, String shopUidNotEquals, String shopNameLike, String shopNameEquals, String shopNameNotEquals, String serviceNameLike, String serviceNameEquals, String serviceNameNotEquals, String personAmountLike, String personAmountEquals, String personAmountNotEquals, Long dateUpper, Long dateLower, Long dateEquals, Long dateNotEquals, String timeLike, String timeEquals, String timeNotEquals, String customerIdLike, String customerIdEquals, String customerIdNotEquals, String customerUidLike, String customerUidEquals, String customerUidNotEquals, String customerNameLike, String customerNameEquals, String customerNameNotEquals, String phoneLike, String phoneEquals, String phoneNotEquals, String remarksLike, String remarksEquals, String remarksNotEquals, String stateLike, String stateEquals, String stateNotEquals) {
        setRecordId(recordId);
        setReservationUidEquals(reservationUidEquals);
        setReservationUidNotEquals(reservationUidNotEquals);
        setIdLike(idLike);
        setIdEquals(idEquals);
        setIdNotEquals(idNotEquals);
        setCreateTimeUpper(createTimeUpper);
        setCreateTimeLower(createTimeLower);
        setCreateTimeEquals(createTimeEquals);
        setCreateTimeNotEquals(createTimeNotEquals);
        setModifyTimeUpper(modifyTimeUpper);
        setModifyTimeLower(modifyTimeLower);
        setModifyTimeEquals(modifyTimeEquals);
        setModifyTimeNotEquals(modifyTimeNotEquals);
        setNumberLike(numberLike);
        setNumberEquals(numberEquals);
        setNumberNotEquals(numberNotEquals);
        setShopUidLike(shopUidLike);
        setShopUidEquals(shopUidEquals);
        setShopUidNotEquals(shopUidNotEquals);
        setShopNameLike(shopNameLike);
        setShopNameEquals(shopNameEquals);
        setShopNameNotEquals(shopNameNotEquals);
        setServiceNameLike(serviceNameLike);
        setServiceNameEquals(serviceNameEquals);
        setServiceNameNotEquals(serviceNameNotEquals);
        setPersonAmountLike(personAmountLike);
        setPersonAmountEquals(personAmountEquals);
        setPersonAmountNotEquals(personAmountNotEquals);
        setDateUpper(dateUpper);
        setDateLower(dateLower);
        setDateEquals(dateEquals);
        setDateNotEquals(dateNotEquals);
        setTimeLike(timeLike);
        setTimeEquals(timeEquals);
        setTimeNotEquals(timeNotEquals);
        setCustomerIdLike(customerIdLike);
        setCustomerIdEquals(customerIdEquals);
        setCustomerIdNotEquals(customerIdNotEquals);
        setCustomerUidLike(customerUidLike);
        setCustomerUidEquals(customerUidEquals);
        setCustomerUidNotEquals(customerUidNotEquals);
        setCustomerNameLike(customerNameLike);
        setCustomerNameEquals(customerNameEquals);
        setCustomerNameNotEquals(customerNameNotEquals);
        setPhoneLike(phoneLike);
        setPhoneEquals(phoneEquals);
        setPhoneNotEquals(phoneNotEquals);
        setRemarksLike(remarksLike);
        setRemarksEquals(remarksEquals);
        setRemarksNotEquals(remarksNotEquals);
        setStateLike(stateLike);
        setStateEquals(stateEquals);
        setStateNotEquals(stateNotEquals);
    }

    public ReservationListCriteria() {
    }

    public ReservationListCriteria duplicate() {
        ReservationListCriteria result = new ReservationListCriteria();
        result.recordId = this.recordId;
        result.reservationUidEquals = this.reservationUidEquals;
        result.reservationUidNotEquals = this.reservationUidNotEquals;
        result.idLike = this.idLike;
        result.idEquals = this.idEquals;
        result.idNotEquals = this.idNotEquals;
        result.createTimeUpper = this.createTimeUpper;
        result.createTimeLower = this.createTimeLower;
        result.createTimeEquals = this.createTimeEquals;
        result.createTimeNotEquals = this.createTimeNotEquals;
        result.modifyTimeUpper = this.modifyTimeUpper;
        result.modifyTimeLower = this.modifyTimeLower;
        result.modifyTimeEquals = this.modifyTimeEquals;
        result.modifyTimeNotEquals = this.modifyTimeNotEquals;
        result.numberLike = this.numberLike;
        result.numberEquals = this.numberEquals;
        result.numberNotEquals = this.numberNotEquals;
        result.shopUidLike = this.shopUidLike;
        result.shopUidEquals = this.shopUidEquals;
        result.shopUidNotEquals = this.shopUidNotEquals;
        result.shopNameLike = this.shopNameLike;
        result.shopNameEquals = this.shopNameEquals;
        result.shopNameNotEquals = this.shopNameNotEquals;
        result.serviceNameLike = this.serviceNameLike;
        result.serviceNameEquals = this.serviceNameEquals;
        result.serviceNameNotEquals = this.serviceNameNotEquals;
        result.personAmountLike = this.personAmountLike;
        result.personAmountEquals = this.personAmountEquals;
        result.personAmountNotEquals = this.personAmountNotEquals;
        result.dateUpper = this.dateUpper;
        result.dateLower = this.dateLower;
        result.dateEquals = this.dateEquals;
        result.dateNotEquals = this.dateNotEquals;
        result.timeLike = this.timeLike;
        result.timeEquals = this.timeEquals;
        result.timeNotEquals = this.timeNotEquals;
        result.customerIdLike = this.customerIdLike;
        result.customerIdEquals = this.customerIdEquals;
        result.customerIdNotEquals = this.customerIdNotEquals;
        result.customerUidLike = this.customerUidLike;
        result.customerUidEquals = this.customerUidEquals;
        result.customerUidNotEquals = this.customerUidNotEquals;
        result.customerNameLike = this.customerNameLike;
        result.customerNameEquals = this.customerNameEquals;
        result.customerNameNotEquals = this.customerNameNotEquals;
        result.phoneLike = this.phoneLike;
        result.phoneEquals = this.phoneEquals;
        result.phoneNotEquals = this.phoneNotEquals;
        result.remarksLike = this.remarksLike;
        result.remarksEquals = this.remarksEquals;
        result.remarksNotEquals = this.remarksNotEquals;
        result.stateLike = this.stateLike;
        result.stateEquals = this.stateEquals;
        result.stateNotEquals = this.stateNotEquals;
        return result;
    }

    @Override
    public String toString() {
        return Convert.toJson(this);
    }

    public Long getRecordId() {
        return recordId;
    }

    public void  setRecordId(Long value) {
        this.recordId = value;
    }

    public ReservationListCriteria withRecordId(Long value) {
        setRecordId(value);
        return this;
    }

    public ReservationListCriteria withRecordId(Long value, Long defaultValue) {
        setRecordId(value == null ? defaultValue : value);
        return this;
    }

    public UID getReservationUidEquals() {
        return reservationUidEquals;
    }

    public void  setReservationUidEquals(UID value) {
        this.reservationUidEquals = value;
    }

    public ReservationListCriteria withReservationUidEquals(UID value) {
        setReservationUidEquals(value);
        return this;
    }

    public ReservationListCriteria withReservationUidEquals(UID value, UID defaultValue) {
        setReservationUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getReservationUidNotEquals() {
        return reservationUidNotEquals;
    }

    public void  setReservationUidNotEquals(UID value) {
        this.reservationUidNotEquals = value;
    }

    public ReservationListCriteria withReservationUidNotEquals(UID value) {
        setReservationUidNotEquals(value);
        return this;
    }

    public ReservationListCriteria withReservationUidNotEquals(UID value, UID defaultValue) {
        setReservationUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getIdLike() {
        return idLike;
    }

    public void  setIdLike(String value) {
        this.idLike = value;
    }

    public ReservationListCriteria withIdLike(String value) {
        setIdLike(value);
        return this;
    }

    public ReservationListCriteria withIdLike(String value, String defaultValue) {
        setIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getIdEquals() {
        return idEquals;
    }

    public void  setIdEquals(String value) {
        this.idEquals = value;
    }

    public ReservationListCriteria withIdEquals(String value) {
        setIdEquals(value);
        return this;
    }

    public ReservationListCriteria withIdEquals(String value, String defaultValue) {
        setIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getIdNotEquals() {
        return idNotEquals;
    }

    public void  setIdNotEquals(String value) {
        this.idNotEquals = value;
    }

    public ReservationListCriteria withIdNotEquals(String value) {
        setIdNotEquals(value);
        return this;
    }

    public ReservationListCriteria withIdNotEquals(String value, String defaultValue) {
        setIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeUpper() {
        return createTimeUpper;
    }

    public void  setCreateTimeUpper(Long value) {
        this.createTimeUpper = value;
    }

    public ReservationListCriteria withCreateTimeUpper(Long value) {
        setCreateTimeUpper(value);
        return this;
    }

    public ReservationListCriteria withCreateTimeUpper(Long value, Long defaultValue) {
        setCreateTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeLower() {
        return createTimeLower;
    }

    public void  setCreateTimeLower(Long value) {
        this.createTimeLower = value;
    }

    public ReservationListCriteria withCreateTimeLower(Long value) {
        setCreateTimeLower(value);
        return this;
    }

    public ReservationListCriteria withCreateTimeLower(Long value, Long defaultValue) {
        setCreateTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeEquals() {
        return createTimeEquals;
    }

    public void  setCreateTimeEquals(Long value) {
        this.createTimeEquals = value;
    }

    public ReservationListCriteria withCreateTimeEquals(Long value) {
        setCreateTimeEquals(value);
        return this;
    }

    public ReservationListCriteria withCreateTimeEquals(Long value, Long defaultValue) {
        setCreateTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeNotEquals() {
        return createTimeNotEquals;
    }

    public void  setCreateTimeNotEquals(Long value) {
        this.createTimeNotEquals = value;
    }

    public ReservationListCriteria withCreateTimeNotEquals(Long value) {
        setCreateTimeNotEquals(value);
        return this;
    }

    public ReservationListCriteria withCreateTimeNotEquals(Long value, Long defaultValue) {
        setCreateTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeUpper() {
        return modifyTimeUpper;
    }

    public void  setModifyTimeUpper(Long value) {
        this.modifyTimeUpper = value;
    }

    public ReservationListCriteria withModifyTimeUpper(Long value) {
        setModifyTimeUpper(value);
        return this;
    }

    public ReservationListCriteria withModifyTimeUpper(Long value, Long defaultValue) {
        setModifyTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeLower() {
        return modifyTimeLower;
    }

    public void  setModifyTimeLower(Long value) {
        this.modifyTimeLower = value;
    }

    public ReservationListCriteria withModifyTimeLower(Long value) {
        setModifyTimeLower(value);
        return this;
    }

    public ReservationListCriteria withModifyTimeLower(Long value, Long defaultValue) {
        setModifyTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeEquals() {
        return modifyTimeEquals;
    }

    public void  setModifyTimeEquals(Long value) {
        this.modifyTimeEquals = value;
    }

    public ReservationListCriteria withModifyTimeEquals(Long value) {
        setModifyTimeEquals(value);
        return this;
    }

    public ReservationListCriteria withModifyTimeEquals(Long value, Long defaultValue) {
        setModifyTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeNotEquals() {
        return modifyTimeNotEquals;
    }

    public void  setModifyTimeNotEquals(Long value) {
        this.modifyTimeNotEquals = value;
    }

    public ReservationListCriteria withModifyTimeNotEquals(Long value) {
        setModifyTimeNotEquals(value);
        return this;
    }

    public ReservationListCriteria withModifyTimeNotEquals(Long value, Long defaultValue) {
        setModifyTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberLike() {
        return numberLike;
    }

    public void  setNumberLike(String value) {
        this.numberLike = value;
    }

    public ReservationListCriteria withNumberLike(String value) {
        setNumberLike(value);
        return this;
    }

    public ReservationListCriteria withNumberLike(String value, String defaultValue) {
        setNumberLike(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberEquals() {
        return numberEquals;
    }

    public void  setNumberEquals(String value) {
        this.numberEquals = value;
    }

    public ReservationListCriteria withNumberEquals(String value) {
        setNumberEquals(value);
        return this;
    }

    public ReservationListCriteria withNumberEquals(String value, String defaultValue) {
        setNumberEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberNotEquals() {
        return numberNotEquals;
    }

    public void  setNumberNotEquals(String value) {
        this.numberNotEquals = value;
    }

    public ReservationListCriteria withNumberNotEquals(String value) {
        setNumberNotEquals(value);
        return this;
    }

    public ReservationListCriteria withNumberNotEquals(String value, String defaultValue) {
        setNumberNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidLike() {
        return shopUidLike;
    }

    public void  setShopUidLike(String value) {
        this.shopUidLike = value;
    }

    public ReservationListCriteria withShopUidLike(String value) {
        setShopUidLike(value);
        return this;
    }

    public ReservationListCriteria withShopUidLike(String value, String defaultValue) {
        setShopUidLike(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidEquals() {
        return shopUidEquals;
    }

    public void  setShopUidEquals(String value) {
        this.shopUidEquals = value;
    }

    public ReservationListCriteria withShopUidEquals(String value) {
        setShopUidEquals(value);
        return this;
    }

    public ReservationListCriteria withShopUidEquals(String value, String defaultValue) {
        setShopUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidNotEquals() {
        return shopUidNotEquals;
    }

    public void  setShopUidNotEquals(String value) {
        this.shopUidNotEquals = value;
    }

    public ReservationListCriteria withShopUidNotEquals(String value) {
        setShopUidNotEquals(value);
        return this;
    }

    public ReservationListCriteria withShopUidNotEquals(String value, String defaultValue) {
        setShopUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameLike() {
        return shopNameLike;
    }

    public void  setShopNameLike(String value) {
        this.shopNameLike = value;
    }

    public ReservationListCriteria withShopNameLike(String value) {
        setShopNameLike(value);
        return this;
    }

    public ReservationListCriteria withShopNameLike(String value, String defaultValue) {
        setShopNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameEquals() {
        return shopNameEquals;
    }

    public void  setShopNameEquals(String value) {
        this.shopNameEquals = value;
    }

    public ReservationListCriteria withShopNameEquals(String value) {
        setShopNameEquals(value);
        return this;
    }

    public ReservationListCriteria withShopNameEquals(String value, String defaultValue) {
        setShopNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameNotEquals() {
        return shopNameNotEquals;
    }

    public void  setShopNameNotEquals(String value) {
        this.shopNameNotEquals = value;
    }

    public ReservationListCriteria withShopNameNotEquals(String value) {
        setShopNameNotEquals(value);
        return this;
    }

    public ReservationListCriteria withShopNameNotEquals(String value, String defaultValue) {
        setShopNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getServiceNameLike() {
        return serviceNameLike;
    }

    public void setServiceNameLike(String value) {
        this.serviceNameLike = value;
    }

    public ReservationListCriteria withServiceNameLike(String value) {
        setServiceNameLike(value);
        return this;
    }

    public ReservationListCriteria withServiceNameLike(String value, String defaultValue) {
        setServiceNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getServiceNameEquals() {
        return serviceNameEquals;
    }

    public void setServiceNameEquals(String value) {
        this.serviceNameEquals = value;
    }

    public ReservationListCriteria withServiceNameEquals(String value) {
        setServiceNameEquals(value);
        return this;
    }

    public ReservationListCriteria withServiceNameEquals(String value, String defaultValue) {
        setServiceNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getServiceNameNotEquals() {
        return serviceNameNotEquals;
    }

    public void setServiceNameNotEquals(String value) {
        this.serviceNameNotEquals = value;
    }

    public ReservationListCriteria withServiceNameNotEquals(String value) {
        setServiceNameNotEquals(value);
        return this;
    }

    public ReservationListCriteria withServiceNameNotEquals(String value, String defaultValue) {
        setServiceNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPersonAmountLike() {
        return personAmountLike;
    }

    public void  setPersonAmountLike(String value) {
        this.personAmountLike = value;
    }

    public ReservationListCriteria withPersonAmountLike(String value) {
        setPersonAmountLike(value);
        return this;
    }

    public ReservationListCriteria withPersonAmountLike(String value, String defaultValue) {
        setPersonAmountLike(value == null ? defaultValue : value);
        return this;
    }

    public String getPersonAmountEquals() {
        return personAmountEquals;
    }

    public void  setPersonAmountEquals(String value) {
        this.personAmountEquals = value;
    }

    public ReservationListCriteria withPersonAmountEquals(String value) {
        setPersonAmountEquals(value);
        return this;
    }

    public ReservationListCriteria withPersonAmountEquals(String value, String defaultValue) {
        setPersonAmountEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPersonAmountNotEquals() {
        return personAmountNotEquals;
    }

    public void  setPersonAmountNotEquals(String value) {
        this.personAmountNotEquals = value;
    }

    public ReservationListCriteria withPersonAmountNotEquals(String value) {
        setPersonAmountNotEquals(value);
        return this;
    }

    public ReservationListCriteria withPersonAmountNotEquals(String value, String defaultValue) {
        setPersonAmountNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getDateUpper() {
        return dateUpper;
    }

    public void setDateUpper(Long value) {
        this.dateUpper = value;
    }

    public ReservationListCriteria withDateUpper(Long value) {
        setDateUpper(value);
        return this;
    }

    public ReservationListCriteria withDateUpper(Long value, Long defaultValue) {
        setDateUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getDateLower() {
        return dateLower;
    }

    public void setDateLower(Long value) {
        this.dateLower = value;
    }

    public ReservationListCriteria withDateLower(Long value) {
        setDateLower(value);
        return this;
    }

    public ReservationListCriteria withDateLower(Long value, Long defaultValue) {
        setDateLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getDateEquals() {
        return dateEquals;
    }

    public void setDateEquals(Long value) {
        this.dateEquals = value;
    }

    public ReservationListCriteria withDateEquals(Long value) {
        setDateEquals(value);
        return this;
    }

    public ReservationListCriteria withDateEquals(Long value, Long defaultValue) {
        setDateEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getDateNotEquals() {
        return dateNotEquals;
    }

    public void setDateNotEquals(Long value) {
        this.dateNotEquals = value;
    }

    public ReservationListCriteria withDateNotEquals(Long value) {
        setDateNotEquals(value);
        return this;
    }

    public ReservationListCriteria withDateNotEquals(Long value, Long defaultValue) {
        setDateNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTimeLike() {
        return timeLike;
    }

    public void setTimeLike(String value) {
        this.timeLike = value;
    }

    public ReservationListCriteria withTimeLike(String value) {
        setTimeLike(value);
        return this;
    }

    public ReservationListCriteria withTimeLike(String value, String defaultValue) {
        setTimeLike(value == null ? defaultValue : value);
        return this;
    }

    public String getTimeEquals() {
        return timeEquals;
    }

    public void setTimeEquals(String value) {
        this.timeEquals = value;
    }

    public ReservationListCriteria withTimeEquals(String value) {
        setTimeEquals(value);
        return this;
    }

    public ReservationListCriteria withTimeEquals(String value, String defaultValue) {
        setTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTimeNotEquals() {
        return timeNotEquals;
    }

    public void setTimeNotEquals(String value) {
        this.timeNotEquals = value;
    }

    public ReservationListCriteria withTimeNotEquals(String value) {
        setTimeNotEquals(value);
        return this;
    }

    public ReservationListCriteria withTimeNotEquals(String value, String defaultValue) {
        setTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdLike() {
        return customerIdLike;
    }

    public void  setCustomerIdLike(String value) {
        this.customerIdLike = value;
    }

    public ReservationListCriteria withCustomerIdLike(String value) {
        setCustomerIdLike(value);
        return this;
    }

    public ReservationListCriteria withCustomerIdLike(String value, String defaultValue) {
        setCustomerIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdEquals() {
        return customerIdEquals;
    }

    public void  setCustomerIdEquals(String value) {
        this.customerIdEquals = value;
    }

    public ReservationListCriteria withCustomerIdEquals(String value) {
        setCustomerIdEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerIdEquals(String value, String defaultValue) {
        setCustomerIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdNotEquals() {
        return customerIdNotEquals;
    }

    public void  setCustomerIdNotEquals(String value) {
        this.customerIdNotEquals = value;
    }

    public ReservationListCriteria withCustomerIdNotEquals(String value) {
        setCustomerIdNotEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerIdNotEquals(String value, String defaultValue) {
        setCustomerIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerUidLike() {
        return customerUidLike;
    }

    public void  setCustomerUidLike(String value) {
        this.customerUidLike = value;
    }

    public ReservationListCriteria withCustomerUidLike(String value) {
        setCustomerUidLike(value);
        return this;
    }

    public ReservationListCriteria withCustomerUidLike(String value, String defaultValue) {
        setCustomerUidLike(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerUidEquals() {
        return customerUidEquals;
    }

    public void  setCustomerUidEquals(String value) {
        this.customerUidEquals = value;
    }

    public ReservationListCriteria withCustomerUidEquals(String value) {
        setCustomerUidEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerUidEquals(String value, String defaultValue) {
        setCustomerUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerUidNotEquals() {
        return customerUidNotEquals;
    }

    public void  setCustomerUidNotEquals(String value) {
        this.customerUidNotEquals = value;
    }

    public ReservationListCriteria withCustomerUidNotEquals(String value) {
        setCustomerUidNotEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerUidNotEquals(String value, String defaultValue) {
        setCustomerUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerNameLike() {
        return customerNameLike;
    }

    public void  setCustomerNameLike(String value) {
        this.customerNameLike = value;
    }

    public ReservationListCriteria withCustomerNameLike(String value) {
        setCustomerNameLike(value);
        return this;
    }

    public ReservationListCriteria withCustomerNameLike(String value, String defaultValue) {
        setCustomerNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerNameEquals() {
        return customerNameEquals;
    }

    public void  setCustomerNameEquals(String value) {
        this.customerNameEquals = value;
    }

    public ReservationListCriteria withCustomerNameEquals(String value) {
        setCustomerNameEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerNameEquals(String value, String defaultValue) {
        setCustomerNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerNameNotEquals() {
        return customerNameNotEquals;
    }

    public void  setCustomerNameNotEquals(String value) {
        this.customerNameNotEquals = value;
    }

    public ReservationListCriteria withCustomerNameNotEquals(String value) {
        setCustomerNameNotEquals(value);
        return this;
    }

    public ReservationListCriteria withCustomerNameNotEquals(String value, String defaultValue) {
        setCustomerNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneLike() {
        return phoneLike;
    }

    public void  setPhoneLike(String value) {
        this.phoneLike = value;
    }

    public ReservationListCriteria withPhoneLike(String value) {
        setPhoneLike(value);
        return this;
    }

    public ReservationListCriteria withPhoneLike(String value, String defaultValue) {
        setPhoneLike(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneEquals() {
        return phoneEquals;
    }

    public void  setPhoneEquals(String value) {
        this.phoneEquals = value;
    }

    public ReservationListCriteria withPhoneEquals(String value) {
        setPhoneEquals(value);
        return this;
    }

    public ReservationListCriteria withPhoneEquals(String value, String defaultValue) {
        setPhoneEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneNotEquals() {
        return phoneNotEquals;
    }

    public void  setPhoneNotEquals(String value) {
        this.phoneNotEquals = value;
    }

    public ReservationListCriteria withPhoneNotEquals(String value) {
        setPhoneNotEquals(value);
        return this;
    }

    public ReservationListCriteria withPhoneNotEquals(String value, String defaultValue) {
        setPhoneNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksLike() {
        return remarksLike;
    }

    public void  setRemarksLike(String value) {
        this.remarksLike = value;
    }

    public ReservationListCriteria withRemarksLike(String value) {
        setRemarksLike(value);
        return this;
    }

    public ReservationListCriteria withRemarksLike(String value, String defaultValue) {
        setRemarksLike(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksEquals() {
        return remarksEquals;
    }

    public void  setRemarksEquals(String value) {
        this.remarksEquals = value;
    }

    public ReservationListCriteria withRemarksEquals(String value) {
        setRemarksEquals(value);
        return this;
    }

    public ReservationListCriteria withRemarksEquals(String value, String defaultValue) {
        setRemarksEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksNotEquals() {
        return remarksNotEquals;
    }

    public void  setRemarksNotEquals(String value) {
        this.remarksNotEquals = value;
    }

    public ReservationListCriteria withRemarksNotEquals(String value) {
        setRemarksNotEquals(value);
        return this;
    }

    public ReservationListCriteria withRemarksNotEquals(String value, String defaultValue) {
        setRemarksNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getStateLike() {
        return stateLike;
    }

    public void  setStateLike(String value) {
        this.stateLike = value;
    }

    public ReservationListCriteria withStateLike(String value) {
        setStateLike(value);
        return this;
    }

    public ReservationListCriteria withStateLike(String value, String defaultValue) {
        setStateLike(value == null ? defaultValue : value);
        return this;
    }

    public String getStateEquals() {
        return stateEquals;
    }

    public void  setStateEquals(String value) {
        this.stateEquals = value;
    }

    public ReservationListCriteria withStateEquals(String value) {
        setStateEquals(value);
        return this;
    }

    public ReservationListCriteria withStateEquals(String value, String defaultValue) {
        setStateEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getStateNotEquals() {
        return stateNotEquals;
    }

    public void  setStateNotEquals(String value) {
        this.stateNotEquals = value;
    }

    public ReservationListCriteria withStateNotEquals(String value) {
        setStateNotEquals(value);
        return this;
    }

    public ReservationListCriteria withStateNotEquals(String value, String defaultValue) {
        setStateNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Object getValueOf(String name) {
        switch(name) {
        case "recordId": return getRecordId();
        case "reservationUidEquals": return getReservationUidEquals();
        case "reservationUidNotEquals": return getReservationUidNotEquals();
        case "idLike": return getIdLike();
        case "idEquals": return getIdEquals();
        case "idNotEquals": return getIdNotEquals();
        case "createTimeUpper": return getCreateTimeUpper();
        case "createTimeLower": return getCreateTimeLower();
        case "createTimeEquals": return getCreateTimeEquals();
        case "createTimeNotEquals": return getCreateTimeNotEquals();
        case "modifyTimeUpper": return getModifyTimeUpper();
        case "modifyTimeLower": return getModifyTimeLower();
        case "modifyTimeEquals": return getModifyTimeEquals();
        case "modifyTimeNotEquals": return getModifyTimeNotEquals();
        case "numberLike": return getNumberLike();
        case "numberEquals": return getNumberEquals();
        case "numberNotEquals": return getNumberNotEquals();
        case "shopUidLike": return getShopUidLike();
        case "shopUidEquals": return getShopUidEquals();
        case "shopUidNotEquals": return getShopUidNotEquals();
        case "shopNameLike": return getShopNameLike();
        case "shopNameEquals": return getShopNameEquals();
        case "shopNameNotEquals": return getShopNameNotEquals();
            case "serviceNameLike":
                return getServiceNameLike();
            case "serviceNameEquals":
                return getServiceNameEquals();
            case "serviceNameNotEquals":
                return getServiceNameNotEquals();
        case "personAmountLike": return getPersonAmountLike();
        case "personAmountEquals": return getPersonAmountEquals();
        case "personAmountNotEquals": return getPersonAmountNotEquals();
            case "dateUpper":
                return getDateUpper();
            case "dateLower":
                return getDateLower();
            case "dateEquals":
                return getDateEquals();
            case "dateNotEquals":
                return getDateNotEquals();
            case "timeLike":
                return getTimeLike();
            case "timeEquals":
                return getTimeEquals();
            case "timeNotEquals":
                return getTimeNotEquals();
        case "customerIdLike": return getCustomerIdLike();
        case "customerIdEquals": return getCustomerIdEquals();
        case "customerIdNotEquals": return getCustomerIdNotEquals();
        case "customerUidLike": return getCustomerUidLike();
        case "customerUidEquals": return getCustomerUidEquals();
        case "customerUidNotEquals": return getCustomerUidNotEquals();
        case "customerNameLike": return getCustomerNameLike();
        case "customerNameEquals": return getCustomerNameEquals();
        case "customerNameNotEquals": return getCustomerNameNotEquals();
        case "phoneLike": return getPhoneLike();
        case "phoneEquals": return getPhoneEquals();
        case "phoneNotEquals": return getPhoneNotEquals();
        case "remarksLike": return getRemarksLike();
        case "remarksEquals": return getRemarksEquals();
        case "remarksNotEquals": return getRemarksNotEquals();
        case "stateLike": return getStateLike();
        case "stateEquals": return getStateEquals();
        case "stateNotEquals": return getStateNotEquals();
        }
        return null;
    }

    public boolean hasField(String name) {
        return FIELD_NAMES.contains(name);
    }

    @Override
    public int hashCode() {
        return signature().hashCode();
    }

    @Override
    public boolean equals(Object o) {
        if(!(o instanceof ReservationListCriteria)) return false;
        return signature().equals(((ReservationListCriteria)o).signature());
    }

    public String signature() {
        throw new RuntimeException("Bean ReservationListCriteria has no signature defined, no hash code or equals possible.");
    }
}
